// 网站首页，文件上传练习的路由器模块

// 1. 导入express
const express = require("express");
// 导入文件上传组件包
const formidable = require('formidable');
const path = require("path");
// 2. 创建路由器对象
const router = express.Router();
// 3. 配置当前信息管理的路由
//(get /) 网站首页
router.get("/", (req, res) => {
    res.render("home/index");
});
//(get /upload) 文件上传表单
router.get("/upload", (req, res) => {
    res.render("home/upload");
});
//(post /doupload) 执行文件上传处理
router.post("/doupload",(req, res) => {
    // 处理文件上传
    //1. 创建表单对象
    const form = formidable({
        //设置文件保存的目录
        uploadDir: path.join(__dirname, '../public/images'),
        // 保留文件后缀名
        keepExtensions: true
    });
    //2. 解析表单
    //fields 字段. 一般表单元素的信息
    //files  文件. 文件上传的信息
    form.parse(req, (err, fields, files) => {
        if (err) {
          console.log(err);
          return;
        }
        res.json({ fields, files });
    });
});

// 4. 导出
module.exports = router;